home *** CD-ROM | disk | FTP | other *** search
/ CU Amiga Super CD-ROM 18 / CU Amiga Magazine's Super CD-ROM 18 (1997)(EMAP Images)(GB)[!][issue 1998-01].iso / CUCD / Programming / AmigaE / Src / OOmodules / library / exec / port / arexxport.e next >
Encoding:
Text File  |  1996-05-12  |  2.2 KB  |  169 lines

  1. OPT MODULE
  2.  
  3. MODULE  'oomodules/library/exec/port',
  4.  
  5.         'exec/ports',
  6.         'exec/nodes',
  7.  
  8.         'rexx/storage',
  9.  
  10.         'rexxsyslib',
  11.         'gadtools'
  12.  
  13. EXPORT OBJECT arexxPort OF port
  14. /****** port/arexxPort ******************************
  15.  
  16.     NAME
  17.         arexxPort() of port --
  18.  
  19.     SYNOPSIS
  20.         port.arexxPort(LONG, LONG)
  21.  
  22.         port.arexxPort(result1, result2)
  23.  
  24.     FUNCTION
  25.  
  26.     INPUTS
  27.         result1:LONG -- 
  28.  
  29.         result2:LONG -- 
  30.  
  31.     RESULT
  32.  
  33.     EXAMPLE
  34.  
  35.     CREATION
  36.  
  37.     HISTORY
  38.  
  39.     NOTES
  40.  
  41.     SEE ALSO
  42.         port
  43.  
  44. ********/
  45.   result1
  46.   result2
  47. ENDOBJECT
  48.  
  49. PROC replyMsg(mode="exec") OF arexxPort
  50. /****** arexxPort/replyMsg ******************************
  51.  
  52.     NAME
  53.         replyMsg() of arexxPort --
  54.  
  55.     SYNOPSIS
  56.         arexxPort.replyMsg(LONG="exec")
  57.  
  58.         arexxPort.replyMsg(mode)
  59.  
  60.     FUNCTION
  61.  
  62.     INPUTS
  63.         mode:LONG -- 
  64.  
  65.     RESULT
  66.  
  67.     EXAMPLE
  68.  
  69.     CREATION
  70.  
  71.     HISTORY
  72.  
  73.     NOTES
  74.  
  75.     SEE ALSO
  76.         arexxPort
  77.  
  78. ********/
  79. DEF msg:PTR TO rexxmsg
  80.  
  81.   IF self.lastMessage = NIL THEN RETURN
  82.  
  83.   msg := self.lastMessage
  84.  
  85.   msg.result1:= self.result1
  86.   msg.result2:= self.result2
  87.  
  88.   IF msg.action AND RXFF_RESULT AND (self.result1=0) AND (self.result2<>NIL)
  89.     msg.result2:=CreateArgstring(self.result2,StrLen(self.result2))
  90.   ENDIF
  91.  
  92.   ReplyMsg(msg)
  93.  
  94. ENDPROC
  95.  
  96. PROC setResults(result1, result2) OF arexxPort
  97. /****** arexxPort/setResults ******************************
  98.  
  99.     NAME
  100.         setResults() of arexxPort --
  101.  
  102.     SYNOPSIS
  103.         arexxPort.setResults(LONG, LONG)
  104.  
  105.         arexxPort.setResults(result1, result2)
  106.  
  107.     FUNCTION
  108.  
  109.     INPUTS
  110.         result1:LONG -- 
  111.  
  112.         result2:LONG -- 
  113.  
  114.     RESULT
  115.  
  116.     EXAMPLE
  117.  
  118.     CREATION
  119.  
  120.     HISTORY
  121.  
  122.     NOTES
  123.  
  124.     SEE ALSO
  125.         arexxPort
  126.  
  127. ********/
  128.  
  129.   self.result1 := result1
  130.   self.result2 := result2
  131.  
  132. ENDPROC
  133.  
  134. PROC getArgStr(number) OF arexxPort
  135. /****** arexxPort/getArgStr ******************************
  136.  
  137.     NAME
  138.         getArgStr() of arexxPort --
  139.  
  140.     SYNOPSIS
  141.         arexxPort.getArgStr(LONG)
  142.  
  143.         arexxPort.getArgStr(number)
  144.  
  145.     FUNCTION
  146.  
  147.     INPUTS
  148.         number:LONG -- 
  149.  
  150.     RESULT
  151.  
  152.     EXAMPLE
  153.  
  154.     CREATION
  155.  
  156.     HISTORY
  157.  
  158.     NOTES
  159.  
  160.     SEE ALSO
  161.         arexxPort
  162.  
  163. ********/
  164.  
  165.   RETURN self.lastMessage::rexxmsg.args[number]
  166.  
  167. ENDPROC
  168.  
  169.